package com.wuliupai.delivery.wuliupaidelivery.utils;

import java.text.DecimalFormat;

/**
 * 数字工具类
 */
public class NumberUtils {

    /**
     * 判断字符串是否为数字
     * @param num
     * @return
     */
    public static boolean isNumberic(String num){
        return (null == num || num.length() <= 0 || num.matches("\\d{1,}")) ? true : false;
    }

    /**
     * 格式化数字为Double
     * @param stringNum
     * @return
     */
    public static double formatDouble(String stringNum) {
        try {
            double tempDouble = Double.parseDouble(stringNum);
            return formatDouble(tempDouble, "0.0");
        } catch (Exception e) {
            return 0;
        }
    }

    /**
     * 保留固定位数的double数字
     *
     * @param num    要被格式化的数据
     * @param format 要保留的样式
     * @return
     */
    public static double formatDouble(double num, String format) {
        DecimalFormat df;
        if (null == format || "".equals(format)) {
            df = new DecimalFormat("0.0");
        } else {
            df = new DecimalFormat(format);
        }
        String doubleFormat = df.format(num);
        return Double.parseDouble(doubleFormat);
    }

    /**
     * 格式化数字为Integer
     * @param stringNum
     * @return
     */
    public static int formatStringToInt(String stringNum) {
        try {
            return Integer.parseInt(stringNum);
        } catch (Exception e) {
            return 0;
        }
    }
}